package com.aspose.cells;

import java.util.ArrayList;
import java.util.HashMap;

class zbwa {
   int a;
   private HashMap b;
   private StringBuilder c = new StringBuilder();
   private WorksheetCollection d;
   private Cell e = null;
   private int f;
   private int g;
   private static final com.aspose.cells.b.c.a.za h = new com.aspose.cells.b.c.a.za(new String[]{"_xlfn.IFERROR_1"});

   void a() {
      this.a = 1;
      this.b = new HashMap();
      int var1 = 0;

      for(int var2 = 0; var2 < this.d.v().getCount(); ++var2) {
         zbqg var3 = this.d.v().a(var2);
         if (var3.e()) {
            ++var1;
         } else if (var3.a() != 0 || var3.k() != null && !"".equals(var3.k().trim())) {
            this.b.put(var2, var2 + 1 - var1);
         } else {
            ++var1;
         }
      }

   }

   void b() {
      this.a = 0;
      this.b = null;
   }

   zbwa(WorksheetCollection var1) {
      this.d = var1;
   }

   private void a(StringBuilder var1, byte[] var2, int var3) {
      int var4 = (com.aspose.cells.b.a.zc.e(var2, var3) & '\uffff') - 1;
      Name var5 = this.d.getNames().get(var4);
      String var6 = var5.getText();
      switch(h.a(var6)) {
      case 0:
         this.c.append("IFERROR");
         return;
      default:
         if (var5.getText().startsWith("_xlfn.")) {
            var6 = var6.substring(6);
         }

         var1.append(var6);
      }
   }

   String a(Cell var1) {
      this.e = var1;
      byte var2 = 2;
      byte[] var3 = var1.v();
      int var5;
      byte var6;
      Cell var7;
      if (var3[var2] == 1 && var3[0] == 5) {
         zaz var8 = ((zyi)var1.c.d).a();
         if (var8 == null) {
            var5 = com.aspose.cells.b.a.zc.e(var3, var2 + 1);
            var6 = var3[var2 + 3];
            var7 = var1.d.checkCell(var5 & '\uffff', var6 & 255);
            if (var7 != null) {
               var8 = var7.D();
            }
         }

         return var8 != null ? this.a(-1, -1, var8.d(), var1.getRow(), var1.getColumn(), !var8.b()) : null;
      } else if (var3[var2] == 2 && var3[0] == 5) {
         zaaz var4 = ((zyi)var1.c.d).b();
         if (var4 == null) {
            var5 = com.aspose.cells.b.a.zc.e(var3, var2 + 1);
            var6 = var3[var2 + 3];
            var7 = var1.d.getRows().a.a(var5 & '\uffff', var6 & 255);
            if (var7 != null) {
               var4 = var7.E();
            }
         }

         if (var4 != null) {
            StringBuilder var9 = new StringBuilder();
            var9.append("{=TABLE(");
            if (var4.e()) {
               var9.append(var4.g());
            }

            var9.append(",");
            if (var4.f()) {
               var9.append(var4.h());
            }

            var9.append(")}");
            return com.aspose.cells.b.a.zr.a(var9);
         } else {
            return null;
         }
      } else {
         return this.a(-1, var3, var1.getRow(), var1.getColumn(), false);
      }
   }

   String a(int var1, byte[] var2, int var3, int var4, boolean var5) {
      return this.a(var1, -1, var2, var3, var4, var5);
   }

   String a(int var1, int var2, byte[] var3, int var4, int var5, boolean var6) {
      int var7 = var1;
      if (var2 != -1) {
         this.f = var2;
         this.g = var1 + var2;
      } else if (var1 == -1) {
         var7 = 2;
         this.f = com.aspose.cells.b.a.zc.e(var3, 0) & '\uffff';
         this.g = var7 + this.f;
      } else {
         this.f = 0;
         this.g = 0;
      }

      int var9 = this.g;
      this.c = new StringBuilder(256);
      ArrayList var13 = new ArrayList();

      while(var7 < var3.length && (this.g == 0 || var7 < var9)) {
         int var10;
         String var12;
         int var16;
         int var19;
         switch(var3[var7]) {
         case 1:
         case 2:
            return null;
         case 3:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '+');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 4:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '-');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 5:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '*');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 6:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '/');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 7:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '^');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 8:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '&');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 9:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '<');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 10:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, "<=");
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 11:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '=');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 12:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, ">=");
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 13:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, '>');
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 14:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, "<>");
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 15:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, " ");
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 16:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, ",");
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 17:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, ":");
            var13.remove(var13.size() - 1);
            ++var7;
            break;
         case 18:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, "+");
            ++var7;
            break;
         case 19:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, "-");
            ++var7;
            break;
         case 20:
            this.c.append("%");
            ++var7;
            break;
         case 21:
            var10 = (Integer)var13.get(var13.size() - 1);
            this.c.insert(var10, "(");
            this.c.append(")");
            ++var7;
            break;
         case 22:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            break;
         case 23:
            try {
               ++var7;
               byte var28 = var3[var7];
               String var11;
               if (var3[var7 + 1] == 0) {
                  byte[] var29 = new byte[2 * (var28 & 255)];

                  for(var16 = 0; var16 < 2 * (var28 & 255); ++var16) {
                     if (var16 % 2 == 0) {
                        byte var30 = var3[var16 / 2 + var7 + 2];
                        if (var30 != 0) {
                           var29[var16] = var30;
                        } else {
                           var29[var16] = 44;
                        }
                     }
                  }

                  var11 = Encoding.getUnicode().a(var29, 0, var29.length);
                  var7 += (var28 & 255) + 2;
               } else {
                  var11 = Encoding.getUnicode().a(var3, var7 + 2, 2 * (var28 & 255));
                  var7 += 2 * (var28 & 255) + 2;
               }

               com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
               this.c.append("\"");
               if (var11 != null && !"".equals(var11)) {
                  var11 = com.aspose.cells.b.a.zv.a(var11, "\"", "\"\"");
                  this.c.append(var11);
               }

               this.c.append("\"");
               break;
            } catch (Exception var27) {
               throw new CellsException(5, "Invalid formula");
            }
         case 24:
            int[] var14 = new int[]{var7};
            String var15 = this.a(var3, var14, var4, var5);
            var7 = var14[0];
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            this.c.append(var15);
            break;
         case 25:
            ++var7;
            var7 = this.a(var3, var7, var13);
            break;
         case 26:
         case 27:
         case 46:
         case 47:
         case 48:
         case 49:
         case 50:
         case 51:
         case 52:
         case 53:
         case 54:
         case 55:
         case 56:
         case 62:
         case 63:
         case 78:
         case 79:
         case 80:
         case 81:
         case 82:
         case 83:
         case 84:
         case 85:
         case 86:
         case 87:
         case 88:
         case 94:
         case 95:
         case 110:
         case 111:
         case 112:
         case 113:
         case 114:
         case 115:
         case 116:
         case 117:
         case 118:
         case 119:
         case 120:
         default:
            return null;
         case 28:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            this.c.append(zsk.b(var3[var7]));
            ++var7;
            break;
         case 29:
            ++var7;
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            if (var3[var7] == 0) {
               this.c.append("FALSE");
            } else {
               this.c.append("TRUE");
            }

            ++var7;
            break;
         case 30:
            var16 = com.aspose.cells.b.a.zc.e(var3, var7 + 1);
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            this.c.append(com.aspose.cells.a.c.zp.a(var16 & '\uffff'));
            var7 += 3;
            break;
         case 31:
            double var17 = com.aspose.cells.b.a.zc.f(var3, var7 + 1);
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            if (var17 < 1.0E21D && Math.abs(var17) > 1.0E-21D) {
               this.c.append(com.aspose.cells.a.c.zp.a(var17));
            } else {
               this.c.append(com.aspose.cells.a.c.zp.b(var17));
            }

            var7 += 9;
            break;
         case 32:
         case 64:
         case 96:
            if (this.g == 0) {
               this.g = var7 + 1;
            }

            this.a(var3, var13);
            var7 += 8;
            break;
         case 33:
         case 65:
         case 97:
            ++var7;
            this.d(var3, var7, var13);
            var7 += 2;
            break;
         case 34:
         case 66:
         case 98:
            ++var7;
            this.c(var3, var7, var13);
            var7 += 3;
            break;
         case 35:
         case 67:
         case 99:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            this.a(this.c, var3, var7);
            var7 += 4;
            break;
         case 36:
         case 68:
         case 100:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            this.c.append(this.a(var3, var7));
            var7 += 4;
            break;
         case 37:
         case 69:
         case 101:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            this.c.append(this.a(var3, var7, var4, var5, var6));
            var7 += 8;
            break;
         case 38:
         case 70:
         case 102:
            var7 += 7;
            break;
         case 39:
         case 71:
         case 103:
            var7 += 7;
            break;
         case 40:
         case 72:
         case 104:
            var7 += 7;
            break;
         case 41:
         case 73:
         case 105:
            var7 += 3;
            break;
         case 42:
         case 74:
         case 106:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            this.c.append("#REF!");
            var7 += 5;
            break;
         case 43:
         case 75:
         case 107:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            this.c.append("#REF!");
            var7 += 9;
            break;
         case 44:
         case 76:
         case 108:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            this.c.append(this.a(var3, var7, var4, var5));
            var7 += 4;
            break;
         case 45:
         case 77:
         case 109:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            this.c.append(this.a(var3, var7, var4, var5, true));
            var7 += 8;
            break;
         case 57:
         case 89:
         case 121:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            var19 = com.aspose.cells.b.a.zc.e(var3, var7) & '\uffff';
            int var20 = this.d.q().c(var19);
            zbqg var21 = null;
            if (this.d.v() != null && var20 < this.d.v().getCount()) {
               var21 = this.d.v().a(var20);
               if (var21.e()) {
                  var21 = null;
               }
            }

            var7 += 2;
            int var22 = com.aspose.cells.b.a.zc.e(var3, var7) & '\uffff';
            Name var23;
            String var24;
            if (var21 == null) {
               var23 = this.d.getNames().get(var22 - 1);
               if (var23.getSheetIndex() == 0) {
                  this.c.append(var23.getText());
               } else {
                  var24 = this.d.get(var23.getSheetIndex() - 1).getName();
                  if (var24.indexOf(" ") != -1 || var24.indexOf("-") != -1 || var24.indexOf("&") != -1 || zapb.c(var24) || zbwg.a(var24)) {
                     var24 = "'" + var24 + "'";
                  }

                  this.c.append(var24 + "!" + var23.getText());
               }
            } else {
               zuk var31;
               if (var21.f()) {
                  var31 = (zuk)var21.b().get(var22 - 1);
                  this.c.append(var31.e().toUpperCase());
               } else {
                  String var32;
                  if (var21.a() == 0) {
                     var32 = null;
                     if (var21.c() != null) {
                        int var33 = this.d.q().d(var19);
                        if (var33 >= 0 && var33 < var21.c().length) {
                           var32 = var21.c()[var33];
                        }
                     }

                     if (this.a != 1) {
                        this.c.append('\'');
                        if (var32 != null) {
                           this.c.append('[');
                        }

                        this.c.append(var21.k());
                        if (var32 != null) {
                           this.c.append(']');
                           this.c.append(var32);
                        }

                        this.c.append('\'');
                     } else {
                        boolean var34 = var32 != null && zakq.b(var32);
                        if (var34) {
                           this.c.append('\'');
                        }

                        this.c.append('[');
                        this.c.append(com.aspose.cells.b.a.zr.a(this.b.get(var20)));
                        this.c.append(']');
                        if (var32 != null) {
                           this.c.append(var32);
                        }

                        if (var34) {
                           this.c.append('\'');
                        }
                     }

                     this.c.append("!");
                     zuk var35 = (zuk)var21.b().get(var22 - 1);
                     this.c.append(var35.e().toUpperCase());
                  } else {
                     if (var21.a() != 3) {
                        return null;
                     }

                     if (this.a == 1) {
                        this.c.append('[');
                        this.c.append(com.aspose.cells.b.a.zr.a(this.b.get(var20)));
                        this.c.append(']');
                     } else {
                        var23 = null;
                        var24 = null;
                        String[] var25 = new String[]{var23};
                        String[] var26 = new String[]{var24};
                        var21.a(var25, var26);
                        var32 = var25[0];
                        var24 = var26[0];
                        this.c.append(var32);
                        this.c.append("|");
                        this.c.append(var24);
                     }

                     this.c.append("!");
                     var31 = (zuk)var21.b().get(var22 - 1);
                     this.c.append('\'');
                     this.c.append(var31.e().toUpperCase());
                     this.c.append('\'');
                  }
               }
            }

            var7 += 4;
            break;
         case 58:
         case 90:
         case 122:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            var19 = com.aspose.cells.b.a.zc.e(var3, var7) & '\uffff';
            var12 = zyn.a(var19, this.d, this.a, this.b);
            this.c.append(var12);
            this.c.append('!');
            if (!"".equals(var12) && var12.charAt(0) == '#') {
               var7 += 6;
               break;
            }

            var7 += 2;
            if (var6) {
               this.c.append(this.a(var3, var7, var4, var5));
            } else {
               this.c.append(this.a(var3, var7));
            }

            var7 += 4;
            break;
         case 59:
         case 91:
         case 123:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            var19 = com.aspose.cells.b.a.zc.e(var3, var7) & '\uffff';
            var12 = zyn.a(var19, this.d, this.a, this.b);
            this.c.append(var12);
            this.c.append('!');
            if (!"".equals(var12) && var12.charAt(0) == '#') {
               var7 += 10;
               break;
            }

            var7 += 2;
            this.c.append(this.a(var3, var7, var4, var5, var6));
            var7 += 8;
            break;
         case 60:
         case 92:
         case 124:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            var19 = com.aspose.cells.b.a.zc.e(var3, var7) & '\uffff';
            var12 = zyn.a(var19, this.d, this.a, this.b);
            this.c.append(var12);
            if (var12.charAt(0) != '#') {
               this.c.append("!#REF!");
            } else {
               this.c.append('!');
            }

            var7 += 6;
            break;
         case 61:
         case 93:
         case 125:
            com.aspose.cells.b.a.a.ze.a(var13, (Object)this.c.length());
            ++var7;
            var19 = com.aspose.cells.b.a.zc.e(var3, var7) & '\uffff';
            var12 = zyn.a(var19, this.d, this.a, this.b);
            this.c.append(var12);
            if (var12.charAt(0) != '#') {
               this.c.append("!#REF!");
            } else {
               this.c.append('!');
            }

            var7 += 10;
         }
      }

      this.c.insert(0, '=');
      var13 = null;
      return com.aspose.cells.b.a.zr.a(this.c);
   }

   void a(StringBuilder var1, zabd var2, int var3, int var4, boolean var5) {
      byte var6 = 0;
      byte[] var7 = var2.f();
      int var10;
      int var14;
      int var15;
      String var18;
      int var23;
      switch(var7[0]) {
      case 3:
      case 4:
      case 5:
      case 6:
      case 7:
      case 8:
      case 9:
      case 10:
      case 11:
      case 12:
      case 13:
      case 14:
      case 15:
      case 16:
      case 17:
         this.a(var1, (zabd)var2.d().get(0), var3, var4, var5);
         var1.append(var2.b());
         this.a(var1, (zabd)var2.d().get(1), var3, var4, var5);
         break;
      case 18:
      case 19:
         var1.append(var2.b());
         this.a(var1, (zabd)var2.d().get(0), var3, var4, var5);
         break;
      case 20:
         this.a(var1, (zabd)var2.d().get(0), var3, var4, var5);
         var1.append(var2.b());
         break;
      case 21:
         var1.append("(");
         this.a(var1, (zabd)var2.d().get(0), var3, var4, var5);
         var1.append(")");
      case 22:
      case 26:
      case 27:
      case 38:
      case 39:
      case 40:
      case 41:
      case 43:
      case 46:
      case 47:
      case 48:
      case 49:
      case 50:
      case 51:
      case 52:
      case 53:
      case 54:
      case 55:
      case 56:
      case 62:
      case 63:
      case 70:
      case 71:
      case 72:
      case 73:
      case 75:
      case 78:
      case 79:
      case 80:
      case 81:
      case 82:
      case 83:
      case 84:
      case 85:
      case 86:
      case 87:
      case 88:
      case 94:
      case 95:
      case 102:
      case 103:
      case 104:
      case 105:
      case 107:
      case 110:
      case 111:
      case 112:
      case 113:
      case 114:
      case 115:
      case 116:
      case 117:
      case 118:
      case 119:
      case 120:
      default:
         break;
      case 23:
         try {
            String var24 = null;
            var23 = var6 + 1;
            byte var25 = var7[var23];
            int var10000;
            if (var7[var23 + 1] != 0) {
               var24 = Encoding.getUnicode().a(var7, var23 + 2, 2 * (var25 & 255));
               var10000 = var23 + 2 * (var25 & 255) + 2;
            } else {
               byte[] var26 = new byte[2 * (var25 & 255)];

               for(int var27 = 0; var27 < 2 * (var25 & 255); ++var27) {
                  if (var27 % 2 == 0) {
                     byte var12 = var7[var27 / 2 + var23 + 2];
                     if (var12 != 0) {
                        var26[var27] = var12;
                     } else {
                        var26[var27] = 44;
                     }
                  }
               }

               var24 = Encoding.getUnicode().a(var26, 0, var26.length);
               var10000 = var23 + (var25 & 255) + 2;
            }

            var1.append("\"");
            if (var24 != null && !"".equals(var24)) {
               var24 = com.aspose.cells.b.a.zv.a(var24, "\"", "\"\"");
               var1.append(var24);
            }

            var1.append("\"");
            break;
         } catch (Exception var22) {
            throw new CellsException(5, "Invalid formula");
         }
      case 24:
         int[] var8 = new int[]{var6};
         String var9 = this.a(var7, var8, var3, var4);
         var23 = var8[0];
         var1.append(var9);
         break;
      case 25:
         if (var2.b() != null && var2.d().size() > 0) {
            var1.append(var2.b());
            var1.append("(");

            for(var10 = 0; var10 < var2.d().size(); ++var10) {
               this.a(var1, (zabd)var2.d().get(var10), var3, var4, var5);
            }

            var1.append(")");
         }
         break;
      case 28:
         var23 = var6 + 1;
         var1.append(zsk.b(var7[var23]));
         ++var23;
         break;
      case 29:
         if (var7[1] == 0) {
            var1.append("FALSE");
         } else {
            var1.append("TRUE");
         }
         break;
      case 30:
         var10 = com.aspose.cells.b.a.zc.e(var7, 1);
         var1.append(com.aspose.cells.a.c.zp.a(var10 & '\uffff'));
         break;
      case 31:
         double var11 = com.aspose.cells.b.a.zc.f(var7, 1);
         if (var11 < 1.0E21D && Math.abs(var11) > 1.0E-21D) {
            var1.append(com.aspose.cells.a.c.zp.a(var11));
         } else {
            var1.append(com.aspose.cells.b.a.zn.b(var11));
         }
         break;
      case 32:
      case 64:
      case 96:
         Object[][] var13 = var2.d() != null && var2.d().size() != 0 ? (Object[][])((Object[][])var2.d().get(0)) : (Object[][])null;

         for(var14 = 0; var14 < var13.length; ++var14) {
            for(var15 = 0; var15 < var13[var14].length; ++var15) {
               var1.append(com.aspose.cells.b.a.zr.a(var13[var14]));
               if (var15 != var13[var14].length - 1) {
                  var1.append(',');
               }
            }

            if (var14 != var13.length - 1) {
               var1.append(';');
            }
         }

         var23 = var6 + 8;
         break;
      case 33:
      case 34:
      case 65:
      case 66:
      case 97:
      case 98:
         var1.append(var2.b());
         var1.append("(");

         for(var14 = 0; var14 < var2.d().size(); ++var14) {
            this.a(var1, (zabd)var2.d().get(var14), var3, var4, var5);
         }

         var1.append(")");
         break;
      case 35:
      case 67:
      case 99:
         this.a(var1, var7, 1);
         break;
      case 36:
      case 68:
      case 100:
         var1.append(this.a(var7, 1));
         break;
      case 37:
      case 69:
      case 101:
         var1.append(this.a(var7, 1, var3, var4, var5));
         break;
      case 42:
      case 74:
      case 106:
         var1.append("#REF!");
         break;
      case 44:
      case 76:
      case 108:
         var1.append(this.a(var7, 1, var3, var4));
         break;
      case 45:
      case 77:
      case 109:
         var1.append(this.a(var7, 1, var3, var4, true));
         break;
      case 57:
      case 89:
      case 121:
         var23 = var6 + 1;
         var14 = com.aspose.cells.b.a.zc.e(var7, var23) & '\uffff';
         var15 = this.d.q().c(var14);
         zbqg var16 = null;
         if (this.d.v() != null && var15 < this.d.v().getCount()) {
            var16 = this.d.v().a(var15);
            if (var16.e()) {
               var16 = null;
            }
         }

         var23 += 2;
         int var17 = com.aspose.cells.b.a.zc.e(var7, var23) & '\uffff';
         String var19;
         if (var16 == null) {
            Name var32 = this.d.getNames().get(var17 - 1);
            if (var32.getSheetIndex() == 0) {
               var1.append(var32.getText());
            } else {
               var19 = this.d.get(var32.getSheetIndex() - 1).getName();
               if (var19.indexOf(" ") != -1 || var19.indexOf("-") != -1 || var19.indexOf("&") != -1 || zapb.c(var19) || zbwg.a(var19)) {
                  var19 = "'" + var19 + "'";
               }

               var1.append(var19 + "!" + var32.getText());
            }
         } else {
            zuk var28;
            if (var16.f()) {
               var28 = (zuk)var16.b().get(var17 - 1);
               var1.append(var28.e().toUpperCase());
            } else if (var16.a() == 0) {
               var18 = null;
               if (var16.c() != null) {
                  int var29 = this.d.q().d(var14);
                  if (var29 >= 0 && var29 < var16.c().length) {
                     var18 = var16.c()[var29];
                  }
               }

               if (this.a == 1) {
                  boolean var30 = var18 != null && zakq.b(var18);
                  if (var30) {
                     var1.append('\'');
                  }

                  var1.append('[');
                  var1.append(com.aspose.cells.b.a.zr.a(this.b.get(var15)));
                  var1.append(']');
                  if (var18 != null) {
                     var1.append(var18);
                  }

                  if (var30) {
                     var1.append('\'');
                  }
               } else {
                  var1.append('\'');
                  if (var18 != null) {
                     var1.append('[');
                  }

                  var1.append(var16.k());
                  if (var18 != null) {
                     var1.append(']');
                     var1.append(var18);
                  }

                  var1.append('\'');
               }

               var1.append("!");
               zuk var31 = (zuk)var16.b().get(var17 - 1);
               var1.append(var31.e().toUpperCase());
            } else {
               if (var16.a() != 3) {
                  return;
               }

               if (this.a == 1) {
                  var1.append('[');
                  var1.append(com.aspose.cells.b.a.zr.a(this.b.get(var15)));
                  var1.append(']');
               } else {
                  var18 = null;
                  var19 = null;
                  String[] var20 = new String[]{var18};
                  String[] var21 = new String[]{var19};
                  var16.a(var20, var21);
                  var18 = var20[0];
                  var19 = var21[0];
                  var1.append(var18);
                  var1.append("|");
                  var1.append(var19);
               }

               var1.append("!");
               var28 = (zuk)var16.b().get(var17 - 1);
               var1.append('\'');
               var1.append(var28.e().toUpperCase());
               var1.append('\'');
            }
         }

         var23 += 4;
         break;
      case 58:
      case 90:
      case 122:
         var23 = var6 + 1;
         var14 = com.aspose.cells.b.a.zc.e(var7, var23) & '\uffff';
         var18 = zyn.a(var14, this.d, this.a, this.b);
         var1.append(var18);
         var1.append('!');
         if (var18.charAt(0) != '#') {
            var23 += 2;
            var1.append(this.a(var7, var23));
            var23 += 4;
         } else {
            var23 += 6;
         }
         break;
      case 59:
      case 91:
      case 123:
         var23 = var6 + 1;
         var14 = com.aspose.cells.b.a.zc.e(var7, var23) & '\uffff';
         var18 = zyn.a(var14, this.d, this.a, this.b);
         var1.append(var18);
         var1.append('!');
         if (var18.charAt(0) != '#') {
            var23 += 2;
            var1.append(this.a(var7, var23, var3, var4, var5));
            var23 += 8;
         } else {
            var23 += 10;
         }
         break;
      case 60:
      case 61:
      case 92:
      case 93:
      case 124:
      case 125:
         var1.append("#REF!");
      }

   }

   private String a(byte[] var1, int[] var2, int var3, int var4) {
      String var7;
      int var10;
      switch(var1[var2[0] + 1]) {
      case 6:
         var2[0] += 6;
         var10 = com.aspose.cells.b.a.zc.e(var1, var2[0] - 4) & '\uffff';
         var7 = CellsHelper.rowIndexToName(var10);
         return var7 + ":" + var7;
      case 7:
         var2[0] += 6;
         var10 = var1[var2[0] - 2] & 255;
         var7 = CellsHelper.columnIndexToName(var10);
         return var7 + ":" + var7;
      case 25:
         String var8 = zbsg.a(this.d, this.e, var1, var2[0], var3, var4, this.a);
         var2[0] += 14;
         return var8;
      case 29:
         int var5 = com.aspose.cells.b.a.zc.a(var1, var2[0] + 2);
         var2[0] += 6;
         if (this.d.a() != null) {
            if (this.d.a() instanceof zaus) {
               zaus var9 = (zaus)this.d.a();
               var7 = var9.a(var5, this.a);
               return var7;
            }

            if (this.d.a() instanceof zauk) {
               zauk var6 = (zauk)this.d.a();
               var7 = var6.c(var5);
               return var7;
            }
         }

         return "#REF!";
      default:
         ++var2[0];
         return "#REF!";
      }
   }

   private void a(byte[] var1, ArrayList var2) {
      com.aspose.cells.b.a.a.ze.a(var2, (Object)this.c.length());
      this.c.append('{');
      int var3 = (var1[this.g] & 255) + 1;
      ++this.g;
      int var4 = (com.aspose.cells.b.a.zc.e(var1, this.g) & '\uffff') + 1;
      this.g += 2;

      for(int var5 = 0; var5 < var4; ++var5) {
         for(int var6 = 0; var6 < var3; ++var6) {
            switch(var1[this.g]) {
            case 0:
               this.g += 9;
               if (var6 != var3 - 1) {
                  this.c.append(',');
               }
               break;
            case 1:
               ++this.g;
               this.c.append(com.aspose.cells.b.a.zc.f(var1, this.g));
               this.g += 8;
               if (var6 != var3 - 1) {
                  this.c.append(',');
               }
               break;
            case 2:
               ++this.g;
               int var7 = com.aspose.cells.b.a.zc.e(var1, this.g) & '\uffff';
               this.c.append("\"");
               if (var7 != 0) {
                  String var8 = null;
                  if (var1[this.g + 2] == 0) {
                     var8 = Encoding.getASCII().a(var1, this.g + 3, var7);
                     this.g += 3 + var7;
                  } else {
                     var8 = Encoding.getUnicode().a(var1, this.g + 3, var7 * 2);
                     this.g += 3 + var7 * 2;
                  }

                  if (var8 != null && !"".equals(var8)) {
                     var8 = com.aspose.cells.b.a.zv.a(var8, "\"", "\"\"");
                  }

                  this.c.append(var8);
               } else {
                  this.g += 3;
               }

               this.c.append("\"");
               if (var6 != var3 - 1) {
                  this.c.append(',');
               }
               break;
            case 4:
               this.c.append(var1[this.g + 1] == 1 ? "TRUE" : "FALSE");
               if (var6 != var3 - 1) {
                  this.c.append(',');
               }

               this.g += 9;
               break;
            case 16:
               this.c.append(zsk.b(var1[this.g + 1]));
               if (var6 != var3 - 1) {
                  this.c.append(',');
               }

               this.g += 9;
            }
         }

         if (var5 != var4 - 1) {
            this.c.append(';');
         }
      }

      this.c.append('}');
   }

   private int a(byte[] var1, int var2, ArrayList var3) {
      switch(var1[var2]) {
      case 4:
         var2 += 3;
         int var5 = com.aspose.cells.b.a.zc.e(var1, var2) & '\uffff';
         var2 += var5;
         break;
      case 16:
         int var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "SUM(");
         this.c.append(")");
         var2 += 3;
         break;
      default:
         var2 += 3;
      }

      return var2;
   }

   private String a(byte[] var1, int var2, int var3, int var4, boolean var5) {
      int var8 = com.aspose.cells.b.a.zc.e(var1, var2);
      byte var9 = var1[var2 + 4];
      int var10;
      if ((var8 & '\uffff') + var3 > 65535) {
         var10 = (var8 & '\uffff') + var3 - '\uffff' - 1;
      } else {
         var10 = (var8 & '\uffff') + var3;
      }

      int var11;
      if ((var9 & 255) + var4 > 255) {
         var11 = (var9 & 255) + var4 - 255 - 1;
      } else {
         var11 = (var9 & 255) + var4;
      }

      StringBuilder var12 = new StringBuilder();
      boolean var13 = true;
      boolean var14 = true;
      if ((var1[var2 + 5] & 255 & 128) != 0) {
         var13 = false;
         if (var5) {
            var8 = var10;
         }
      }

      if ((var1[var2 + 5] & 255 & 64) != 0) {
         var14 = false;
         if (var5) {
            var9 = (byte)var11;
         }
      }

      int var6 = com.aspose.cells.b.a.zc.e(var1, var2 + 2);
      byte var7 = var1[var2 + 6];
      if ((var6 & '\uffff') + var3 > 65535) {
         var10 = (var6 & '\uffff') + var3 - '\uffff' - 1;
      } else {
         var10 = (var6 & '\uffff') + var3;
      }

      if ((var7 & 255) + var4 > 255) {
         var11 = (var7 & 255) + var4 - 255 - 1;
      } else {
         var11 = (var7 & 255) + var4;
      }

      boolean var15 = true;
      boolean var16 = true;
      if ((var1[var2 + 7] & 255 & 128) != 0) {
         var15 = false;
         if (var5) {
            var6 = var10;
         }
      }

      if ((var1[var2 + 7] & 255 & 64) != 0) {
         var16 = false;
         if (var5) {
            var7 = (byte)var11;
         }
      }

      if ((var8 & '\uffff') == 0 && (var6 & '\uffff') == 65535) {
         if (var14) {
            var12.append("$");
         }

         var12.append(CellsHelper.columnIndexToName(var9 & 255));
         var12.append(':');
         if (var16) {
            var12.append("$");
         }

         var12.append(CellsHelper.columnIndexToName(var7 & 255));
         return com.aspose.cells.b.a.zr.a(var12);
      } else if (var9 == 0 && (var7 & 255) == 255) {
         if (var13) {
            var12.append("$");
         }

         var12.append((var8 & '\uffff') + 1);
         var12.append(':');
         if (var15) {
            var12.append("$");
         }

         var12.append((var6 & '\uffff') + 1);
         return com.aspose.cells.b.a.zr.a(var12);
      } else {
         if (var14) {
            var12.append('$');
         }

         var12.append(CellsHelper.columnIndexToName(var9 & 255));
         if (var13) {
            var12.append('$');
         }

         var12.append((var8 & '\uffff') + 1);
         var12.append(':');
         if (var16) {
            var12.append('$');
         }

         var12.append(CellsHelper.columnIndexToName(var7 & 255));
         if (var15) {
            var12.append('$');
         }

         var12.append((var6 & '\uffff') + 1);
         return com.aspose.cells.b.a.zr.a(var12);
      }
   }

   private String a(byte[] var1, int var2, int var3, int var4) {
      int var5 = com.aspose.cells.b.a.zc.e(var1, var2);
      byte var6 = var1[var2 + 2];
      int var7;
      if ((var5 & '\uffff') + var3 > 65535) {
         var7 = (var5 & '\uffff') + var3 - '\uffff' - 1;
      } else {
         var7 = (var5 & '\uffff') + var3;
      }

      int var8;
      if ((var6 & 255) + var4 > 255) {
         var8 = (var6 & 255) + var4 - 255 - 1;
      } else {
         var8 = (var6 & 255) + var4;
      }

      byte var9 = var1[var2 + 3];
      StringBuilder var10 = new StringBuilder();
      if ((var9 & 255 & 64) == 0) {
         var10.append('$');
         var10.append(CellsHelper.columnIndexToName(var6 & 255));
      } else {
         var10.append(CellsHelper.columnIndexToName(var8));
      }

      if ((var9 & 255 & 128) == 0) {
         var10.append('$');
         var10.append(CellsHelper.rowIndexToName(var5 & '\uffff'));
      } else {
         var10.append(CellsHelper.rowIndexToName(var7));
      }

      return com.aspose.cells.b.a.zr.a(var10);
   }

   private String a(byte[] var1, int var2) {
      int var3 = com.aspose.cells.b.a.zc.e(var1, var2);
      byte var4 = var1[var2 + 2];
      boolean var5 = true;
      boolean var6 = true;
      byte var7 = var1[var2 + 3];
      if ((var7 & 255 & 64) != 0) {
         var6 = false;
      }

      if ((var7 & 255 & 128) != 0) {
         var5 = false;
      }

      return zakq.a(var3 & '\uffff', var4 & 255, var5, var6);
   }

   private void b(byte[] var1, int var2, ArrayList var3) {
      int var5 = (var1[var2] & 255) - 1;

      int var4;
      int var6;
      for(var6 = 1; var6 < var5; ++var6) {
         var4 = (Integer)var3.get(var3.size() - var6);
         this.c.insert(var4, ',');
      }

      var6 = var3.size() - var5;
      if (var6 < var3.size()) {
         var4 = (Integer)var3.get(var6);
      } else {
         var4 = this.c.length();
      }

      this.c.insert(var4, "(");
      if ((var1[var2] & 255) - 1 > 0) {
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - (var1[var2] & 255) + 1, (var1[var2] & 255) - 1);
      }

      this.c.append(")");
   }

   private void a(String var1, int var2, ArrayList var3) {
      boolean var4 = false;

      int var5;
      int var6;
      for(var5 = 1; var5 < var2; ++var5) {
         var6 = (Integer)var3.get(var3.size() - var5);
         this.c.insert(var6, ',');
      }

      var5 = var3.size() - var2;
      if (var5 < var3.size()) {
         var6 = (Integer)var3.get(var5);
      } else {
         var6 = this.c.length();
         com.aspose.cells.b.a.a.ze.a(var3, (Object)var6);
      }

      this.c.insert(var6, var1 + "(");
      if (var2 - 1 > 0) {
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - var2 + 1, var2 - 1);
      }

   }

   private void c(byte[] var1, int var2, ArrayList var3) {
      int var5 = com.aspose.cells.b.a.zc.e(var1, var2 + 1);
      if ((var5 & '\uffff') == 255) {
         this.b(var1, var2, var3);
      } else {
         int var4;
         int var6;
         for(var6 = 1; var6 < (var1[var2] & 255); ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var6 = var3.size() - (var1[var2] & 255);
         if (var6 < var3.size()) {
            var4 = (Integer)var3.get(var6);
         } else {
            var4 = this.c.length();
            com.aspose.cells.b.a.a.ze.a(var3, (Object)var4);
         }

         switch(var5) {
         case 0:
            this.c.insert(var4, "COUNT(");
            break;
         case 1:
            this.c.insert(var4, "IF(");
            break;
         case 2:
         case 3:
         case 10:
         case 15:
         case 16:
         case 17:
         case 18:
         case 19:
         case 20:
         case 21:
         case 22:
         case 23:
         case 24:
         case 25:
         case 26:
         case 27:
         case 30:
         case 31:
         case 32:
         case 33:
         case 34:
         case 35:
         case 38:
         case 39:
         case 40:
         case 41:
         case 42:
         case 43:
         case 44:
         case 45:
         case 47:
         case 48:
         case 53:
         case 54:
         case 55:
         case 60:
         case 61:
         case 63:
         case 65:
         case 66:
         case 67:
         case 68:
         case 69:
         case 71:
         case 72:
         case 73:
         case 74:
         case 75:
         case 76:
         case 77:
         case 79:
         case 80:
         case 81:
         case 83:
         case 84:
         case 85:
         case 86:
         case 87:
         case 88:
         case 89:
         case 90:
         case 91:
         case 92:
         case 93:
         case 94:
         case 95:
         case 96:
         case 97:
         case 98:
         case 99:
         case 103:
         case 104:
         case 105:
         case 106:
         case 107:
         case 108:
         case 110:
         case 111:
         case 112:
         case 113:
         case 114:
         case 117:
         case 118:
         case 119:
         case 121:
         case 122:
         case 123:
         case 126:
         case 127:
         case 128:
         case 129:
         case 130:
         case 131:
         case 132:
         case 133:
         case 134:
         case 135:
         case 136:
         case 137:
         case 138:
         case 139:
         case 140:
         case 141:
         case 142:
         case 143:
         case 145:
         case 146:
         case 147:
         case 149:
         case 150:
         case 151:
         case 152:
         case 153:
         case 154:
         case 155:
         case 156:
         case 157:
         case 158:
         case 159:
         case 160:
         case 161:
         case 162:
         case 163:
         case 164:
         case 165:
         case 166:
         case 170:
         case 171:
         case 172:
         case 173:
         case 174:
         case 175:
         case 176:
         case 177:
         case 178:
         case 179:
         case 180:
         case 181:
         case 182:
         case 184:
         case 185:
         case 186:
         case 187:
         case 188:
         case 189:
         case 190:
         case 191:
         case 192:
         case 195:
         case 196:
         case 198:
         case 199:
         case 200:
         case 201:
         case 202:
         case 203:
         case 205:
         case 206:
         case 207:
         case 208:
         case 209:
         case 210:
         case 211:
         case 212:
         case 213:
         case 214:
         case 215:
         case 217:
         case 218:
         case 221:
         case 222:
         case 223:
         case 224:
         case 225:
         case 226:
         case 229:
         case 230:
         case 231:
         case 232:
         case 233:
         case 234:
         case 235:
         case 236:
         case 237:
         case 238:
         case 239:
         case 240:
         case 241:
         case 242:
         case 243:
         case 244:
         case 245:
         case 246:
         case 247:
         case 248:
         case 249:
         case 250:
         case 251:
         case 252:
         case 253:
         case 254:
         case 255:
         case 256:
         case 257:
         case 258:
         case 259:
         case 260:
         case 261:
         case 262:
         case 263:
         case 264:
         case 265:
         case 266:
         case 267:
         case 268:
         case 271:
         case 273:
         case 274:
         case 275:
         case 276:
         case 277:
         case 278:
         case 279:
         case 280:
         case 281:
         case 282:
         case 283:
         case 284:
         case 285:
         case 286:
         case 287:
         case 288:
         case 289:
         case 290:
         case 291:
         case 292:
         case 293:
         case 294:
         case 295:
         case 296:
         case 297:
         case 298:
         case 299:
         case 300:
         case 301:
         case 302:
         case 303:
         case 304:
         case 305:
         case 306:
         case 307:
         case 308:
         case 309:
         case 310:
         case 311:
         case 312:
         case 313:
         case 314:
         case 315:
         case 316:
         case 325:
         case 326:
         case 327:
         case 328:
         case 331:
         case 332:
         case 333:
         case 334:
         case 335:
         case 337:
         case 338:
         case 339:
         case 340:
         case 341:
         case 342:
         case 343:
         case 346:
         case 347:
         case 348:
         case 349:
         case 350:
         case 351:
         case 352:
         case 353:
         case 355:
         case 356:
         case 357:
         case 360:
         case 362:
         case 365:
         default:
            zabl var7 = zabl.a(var5 & '\uffff');
            if (var7 == null) {
               return;
            }

            this.c.insert(var4, var7.b + "(");
            break;
         case 4:
            this.c.insert(var4, "SUM(");
            break;
         case 5:
            this.c.insert(var4, "AVERAGE(");
            break;
         case 6:
            this.c.insert(var4, "MIN(");
            break;
         case 7:
            this.c.insert(var4, "MAX(");
            break;
         case 8:
            this.c.insert(var4, "ROW(");
            break;
         case 9:
            this.c.insert(var4, "COLUMN(");
            break;
         case 11:
            this.c.insert(var4, "NPV(");
            break;
         case 12:
            this.c.insert(var4, "STDEV(");
            break;
         case 13:
            this.c.insert(var4, "DOLLAR(");
            break;
         case 14:
            this.c.insert(var4, "FIXED(");
            break;
         case 28:
            this.c.insert(var4, "LOOKUP(");
            break;
         case 29:
            this.c.insert(var4, "INDEX(");
            break;
         case 36:
            this.c.insert(var4, "AND(");
            break;
         case 37:
            this.c.insert(var4, "OR(");
            break;
         case 46:
            this.c.insert(var4, "VAR(");
            break;
         case 49:
            this.c.insert(var4, "LINEST(");
            break;
         case 50:
            this.c.insert(var4, "TREND(");
            break;
         case 51:
            this.c.insert(var4, "LOGEST(");
            break;
         case 52:
            this.c.insert(var4, "GROWTH(");
            break;
         case 56:
            this.c.insert(var4, "PV(");
            break;
         case 57:
            this.c.insert(var4, "FV(");
            break;
         case 58:
            this.c.insert(var4, "NPER(");
            break;
         case 59:
            this.c.insert(var4, "PMT(");
            break;
         case 62:
            this.c.insert(var4, "IRR(");
            break;
         case 64:
            this.c.insert(var4, "MATCH(");
            break;
         case 70:
            this.c.insert(var4, "WEEKDAY(");
            break;
         case 78:
            this.c.insert(var4, "OFFSET(");
            break;
         case 82:
            this.c.insert(var4, "SEARCH(");
            break;
         case 100:
            this.c.insert(var4, "CHOOSE(");
            break;
         case 101:
            this.c.insert(var4, "HLOOKUP(");
            break;
         case 102:
            this.c.insert(var4, "VLOOKUP(");
            break;
         case 109:
            this.c.insert(var4, "LOG(");
            break;
         case 115:
            this.c.insert(var4, "LEFT(");
            break;
         case 116:
            this.c.insert(var4, "RIGHT(");
            break;
         case 120:
            this.c.insert(var4, "SUBSTITUTE(");
            break;
         case 124:
            this.c.insert(var4, "FIND(");
            break;
         case 125:
            this.c.insert(var4, "CELL(");
            break;
         case 144:
            this.c.insert(var4, "DDB(");
            break;
         case 148:
            this.c.insert(var4, "INDIRECT(");
            break;
         case 167:
            this.c.insert(var4, "IPMT(");
            break;
         case 168:
            this.c.insert(var4, "PPMT(");
            break;
         case 169:
            this.c.insert(var4, "COUNTA(");
            break;
         case 183:
            this.c.insert(var4, "PRODUCT(");
            break;
         case 193:
            this.c.insert(var4, "STDEVP(");
            break;
         case 194:
            this.c.insert(var4, "VARP(");
            break;
         case 197:
            this.c.insert(var4, "TRUNC(");
            break;
         case 204:
            this.c.insert(var4, "DOLLAR(");
            break;
         case 216:
            this.c.insert(var4, "RANK(");
            break;
         case 219:
            this.c.insert(var4, "ADDRESS(");
            break;
         case 220:
            this.c.insert(var4, "DAYS360(");
            break;
         case 227:
            this.c.insert(var4, "MEDIAN(");
            break;
         case 228:
            this.c.insert(var4, "SUMPRODUCT(");
            break;
         case 269:
            this.c.insert(var4, "AVEDEV(");
            break;
         case 270:
            this.c.insert(var4, "BETADIST(");
            break;
         case 272:
            this.c.insert(var4, "BETAINV(");
            break;
         case 317:
            this.c.insert(var4, "PROB(");
            break;
         case 318:
            this.c.insert(var4, "DEVSQ(");
            break;
         case 319:
            this.c.insert(var4, "GEOMEAN(");
            break;
         case 320:
            this.c.insert(var4, "HARMEAN(");
            break;
         case 321:
            this.c.insert(var4, "SUMSQ(");
            break;
         case 322:
            this.c.insert(var4, "KURT(");
            break;
         case 323:
            this.c.insert(var4, "SKEW(");
            break;
         case 324:
            this.c.insert(var4, "ZTEST(");
            break;
         case 329:
            this.c.insert(var4, "PERCENTRANK(");
            break;
         case 330:
            this.c.insert(var4, "MODE(");
            break;
         case 336:
            this.c.insert(var4, "CONCATENATE(");
            break;
         case 344:
            this.c.insert(var4, "SUBTOTAL(");
            break;
         case 345:
            this.c.insert(var4, "SUMIF(");
            break;
         case 354:
            this.c.insert(var4, "ROMAN(");
            break;
         case 358:
            this.c.insert(var4, "GETPIVOTDATA(");
            break;
         case 359:
            this.c.insert(var4, "HYPERLINK(");
            break;
         case 361:
            this.c.insert(var4, "AVERAGEA(");
            break;
         case 363:
            this.c.insert(var4, "MINA(");
            break;
         case 364:
            this.c.insert(var4, "STDEVPA(");
            break;
         case 366:
            this.c.insert(var4, "STDEVA(");
            break;
         case 367:
            this.c.insert(var4, "VARA(");
         }

         if ((var1[var2] & 255) - 1 > 0) {
            com.aspose.cells.b.a.a.ze.a(var3, var3.size() - (var1[var2] & 255) + 1, (var1[var2] & 255) - 1);
         }

         this.c.append(")");
      }
   }

   private void d(byte[] var1, int var2, ArrayList var3) {
      int var5 = com.aspose.cells.b.a.zc.e(var1, var2);
      int var4;
      int var6;
      switch(var5) {
      case 2:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISNA(");
         break;
      case 3:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISERROR(");
         break;
      case 4:
      case 5:
      case 6:
      case 7:
      case 8:
      case 9:
      case 11:
      case 12:
      case 13:
      case 14:
      case 28:
      case 29:
      case 36:
      case 37:
      case 46:
      case 49:
      case 50:
      case 51:
      case 52:
      case 53:
      case 54:
      case 55:
      case 56:
      case 57:
      case 58:
      case 59:
      case 60:
      case 61:
      case 62:
      case 64:
      case 70:
      case 78:
      case 79:
      case 80:
      case 81:
      case 82:
      case 84:
      case 85:
      case 86:
      case 87:
      case 88:
      case 89:
      case 90:
      case 91:
      case 92:
      case 93:
      case 94:
      case 95:
      case 96:
      case 100:
      case 101:
      case 102:
      case 103:
      case 104:
      case 106:
      case 107:
      case 108:
      case 109:
      case 110:
      case 115:
      case 116:
      case 120:
      case 122:
      case 123:
      case 124:
      case 125:
      case 132:
      case 133:
      case 134:
      case 135:
      case 136:
      case 137:
      case 138:
      case 139:
      case 144:
      case 145:
      case 146:
      case 147:
      case 148:
      case 149:
      case 150:
      case 151:
      case 152:
      case 153:
      case 154:
      case 155:
      case 156:
      case 157:
      case 158:
      case 159:
      case 160:
      case 161:
      case 162:
      case 166:
      case 167:
      case 168:
      case 169:
      case 170:
      case 171:
      case 172:
      case 173:
      case 174:
      case 175:
      case 176:
      case 177:
      case 178:
      case 179:
      case 180:
      case 181:
      case 182:
      case 183:
      case 185:
      case 186:
      case 187:
      case 188:
      case 191:
      case 192:
      case 193:
      case 194:
      case 197:
      case 200:
      case 201:
      case 202:
      case 203:
      case 204:
      case 205:
      case 206:
      case 207:
      case 208:
      case 209:
      case 210:
      case 211:
      case 216:
      case 217:
      case 218:
      case 219:
      case 220:
      case 222:
      case 223:
      case 224:
      case 225:
      case 226:
      case 227:
      case 228:
      case 236:
      case 237:
      case 238:
      case 239:
      case 240:
      case 241:
      case 242:
      case 243:
      case 244:
      case 245:
      case 246:
      case 247:
      case 248:
      case 249:
      case 250:
      case 251:
      case 253:
      case 254:
      case 255:
      case 256:
      case 257:
      case 258:
      case 259:
      case 260:
      case 261:
      case 262:
      case 263:
      case 264:
      case 265:
      case 266:
      case 267:
      case 268:
      case 269:
      case 270:
      case 271:
      case 272:
      case 317:
      case 318:
      case 319:
      case 320:
      case 321:
      case 322:
      case 323:
      case 324:
      case 329:
      case 330:
      case 333:
      case 334:
      case 335:
      case 336:
      case 338:
      case 339:
      case 340:
      case 341:
      case 344:
      case 345:
      case 348:
      case 349:
      case 350:
      default:
         zabl var8 = zabl.a(var5 & '\uffff');
         if (var8 == null) {
            return;
         }

         if (var3.size() < (var8.d & 255)) {
            return;
         }

         for(int var7 = 1; var7 < (var8.d & 255); ++var7) {
            var4 = (Integer)var3.get(var3.size() - var7);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - (var8.d & 255));
         this.c.insert(var4, var8.b + "(");
         if ((var8.d & 255) > 1) {
            com.aspose.cells.b.a.a.ze.a(var3, var3.size() - (var8.d & 255) + 1, (var8.d & 255) - 1);
         }

         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 10:
         com.aspose.cells.b.a.a.ze.a(var3, (Object)this.c.length());
         this.c.append("NA(");
         break;
      case 15:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "SIN(");
         break;
      case 16:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "COS(");
         break;
      case 17:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "TAN(");
         break;
      case 18:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ATAN(");
         break;
      case 19:
         com.aspose.cells.b.a.a.ze.a(var3, (Object)this.c.length());
         this.c.append("PI(");
         break;
      case 20:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "SQRT(");
         break;
      case 21:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "EXP(");
         break;
      case 22:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "LN(");
         break;
      case 23:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "LOG10(");
         break;
      case 24:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ABS(");
         break;
      case 25:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "INT(");
         break;
      case 26:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "SIGN(");
         break;
      case 27:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "ROUND(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 30:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "REPT(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 31:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "MID(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 32:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "LEN(");
         break;
      case 33:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "VALUE(");
         break;
      case 34:
         com.aspose.cells.b.a.a.ze.a(var3, (Object)this.c.length());
         this.c.append("TRUE(");
         break;
      case 35:
         com.aspose.cells.b.a.a.ze.a(var3, (Object)this.c.length());
         this.c.append("FALSE(");
         break;
      case 38:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "NOT(");
         break;
      case 39:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "MOD(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 40:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DCOUNT(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 41:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DSUM(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 42:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DAVERAGE(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 43:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DMIN(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 44:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DMAX(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         } else {
            com.aspose.cells.b.a.a.ze.a(var3, (Object)var4);
         }
         break;
      case 45:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DSTDEV(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 47:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DVAR(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 48:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "TEXT(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 63:
         com.aspose.cells.b.a.a.ze.a(var3, (Object)this.c.length());
         this.c.append("RAND(");
         break;
      case 65:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DATE(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         } else {
            com.aspose.cells.b.a.a.ze.a(var3, (Object)var4);
         }
         break;
      case 66:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "TIME(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 67:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "DAY(");
         break;
      case 68:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "MONTH(");
         break;
      case 69:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "YEAR(");
         break;
      case 71:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "HOUR(");
         break;
      case 72:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "MINUTE(");
         break;
      case 73:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "SECOND(");
         break;
      case 74:
         com.aspose.cells.b.a.a.ze.a(var3, (Object)this.c.length());
         this.c.append("NOW(");
         break;
      case 75:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "AREAS(");
         break;
      case 76:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ROWS(");
         break;
      case 77:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "COLUMNS(");
         break;
      case 83:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "TRANSPOSE(");
         break;
      case 97:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "ATAN2(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 98:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ASIN(");
         break;
      case 99:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ACOS(");
         break;
      case 105:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISREF(");
         break;
      case 111:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "CHAR(");
         break;
      case 112:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "LOWER(");
         break;
      case 113:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "UPPER(");
         break;
      case 114:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "PROPER(");
         break;
      case 117:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "EXACT(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 118:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "TRIM(");
         break;
      case 119:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "REPLACE(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 121:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "CODE(");
         break;
      case 126:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISERR(");
         break;
      case 127:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISTEXT(");
         break;
      case 128:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISNUMBER(");
         break;
      case 129:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISBLANK(");
         break;
      case 130:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "T(");
         break;
      case 131:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "N(");
         break;
      case 140:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "DATEVALUE(");
         break;
      case 141:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "TIMEVALUE(");
         break;
      case 142:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "SLN(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 143:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "SYD(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 163:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "MDETERM(");
         break;
      case 164:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "MINVERSE(");
         break;
      case 165:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "MMULT(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 184:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "FACT(");
         break;
      case 189:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DPRODUCT(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 190:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISNONTEXT(");
         break;
      case 195:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DSTDEVP(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 196:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DVARP(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 198:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ISLOGICAL(");
         break;
      case 199:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DCOUNTA(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 212:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "ROUNDUP(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 213:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "ROUNDDOWN(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 214:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ASC(");
         break;
      case 215:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "WIDECHAR(");
         break;
      case 221:
         var4 = this.c.length();
         this.c.append("TODAY(");
         com.aspose.cells.b.a.a.ze.a(var3, (Object)var4);
         break;
      case 229:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "SINH(");
         break;
      case 230:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "COSH(");
         break;
      case 231:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "TANH(");
         break;
      case 232:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ASINH(");
         break;
      case 233:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ACOSH(");
         break;
      case 234:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ATANH(");
         break;
      case 235:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "DGET(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 252:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "FREQUENCY(");
         var3.remove(var3.size() - 1);
         break;
      case 273:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "BINOMDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 274:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "CHIDIST(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 275:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "CHIINV(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 276:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "COMBIN(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 277:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "CONFIDENCE(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 278:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "CRITBINOM(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 279:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "EVEN(");
         break;
      case 280:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "EXPONDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 281:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "FDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 282:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "FINV(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 283:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "FISHER(");
         break;
      case 284:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "FISHERINV(");
         break;
      case 285:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "FLOOR(");
         var3.remove(var3.size() - 1);
         break;
      case 286:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "GAMMADIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         break;
      case 287:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "GAMMAINV(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 288:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "CEILING(");
         var3.remove(var3.size() - 1);
         break;
      case 289:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "HYPGEOMDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         break;
      case 290:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "LOGNORMDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 291:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "LOGINV(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 292:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "NEGBINOMDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         break;
      case 293:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "NORMDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         break;
      case 294:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "NORMSDIST(");
         break;
      case 295:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "NORMINV(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 296:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "NORMSINV(");
         break;
      case 297:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "STANDARDIZE(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 298:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "ODD(");
         break;
      case 299:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "PERMUT(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 300:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "POISSON(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 301:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "TDIST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 302:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "WEIBULL(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 303:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "SUMXMY2(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 304:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "SUMX2MY2(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 305:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "SUMX2PY2(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 306:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "CHITEST(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 307:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "CORREL(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 308:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "COVAR(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 309:
         if (var3.size() < 3) {
            return;
         }

         for(var6 = 1; var6 < 3; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 3);
         this.c.insert(var4, "FORECAST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 2, 2);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 310:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "FTEST(");
         var3.remove(var3.size() - 1);
         break;
      case 311:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "INTERCEPT(");
         var3.remove(var3.size() - 1);
         break;
      case 312:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "PEARSON(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 313:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "RSQ(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 314:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "STEYX(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 315:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "SLOPE(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 316:
         if (var3.size() < 4) {
            return;
         }

         for(var6 = 1; var6 < 4; ++var6) {
            var4 = (Integer)var3.get(var3.size() - var6);
            this.c.insert(var4, ',');
         }

         var4 = (Integer)var3.get(var3.size() - 4);
         this.c.insert(var4, "TTEST(");
         com.aspose.cells.b.a.a.ze.a(var3, var3.size() - 3, 3);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 325:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "LARGE(");
         var3.remove(var3.size() - 1);
         break;
      case 326:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "SMALL(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 327:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "QUARTILE(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 328:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "PERCENTILE(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 331:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "TRIMMEAN(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 332:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "TINV(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 337:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "POWER(");
         var3.remove(var3.size() - 1);
         break;
      case 342:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "RADIANS(");
         break;
      case 343:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "DEGREES(");
         break;
      case 346:
         if (var3.size() < 2) {
            return;
         }

         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, ',');
         var4 = (Integer)var3.get(var3.size() - 2);
         this.c.insert(var4, "COUNTIF(");
         var3.remove(var3.size() - 1);
         if (var3.size() > 0) {
            var3.set(var3.size() - 1, var4);
         }
         break;
      case 347:
         var4 = (Integer)var3.get(var3.size() - 1);
         this.c.insert(var4, "COUNTBLANK(");
         break;
      case 351:
         this.a((String)"DATEDIF", 3, var3);
         break;
      case 352:
         this.a((String)"DATESTRING", 1, var3);
      }

      this.c.append(")");
   }
}
